home *** CD-ROM | disk | FTP | other *** search
-
- ================================================================================
- STOPMAX.SYS : Ver. 2.0, Copyright (1992,93) by Philip B. Gardner
- ================================================================================
-
- STOPMAX.SYS is a derivative of DOSMAX.EXE. The algorithums of DOSMAX which
- "stop" the DOS 5.0 and above kernel from loading into the HMA have been
- assembled separately into STOPMAX.SYS. This allows DOSMAX.EXE to load high
- after the memory manager has installed and still put the DOS kernel into a
- UMB. STOPMAX is specifically for DOS 5.0 and above users and will not work
- with DOS versions prior to DOS 5.0 and above.
-
- STOPMAX prevents DOS from loading into the HMA using one of the for methods
- which are also part of DOSMAX. The default method "/B," patches the DOS
- 5.0 and above initialization code. This method and the "/V" (VDISK header
- method), do not require any resident memory, so STOPMAX simply executes and
- returns all memory to DOS. DOSMAX should then be loaded as a DEVICE, after
- the memory manager and there is no restriction as to when DOSMAX should be
- installed.
-
- Support is provided for:
-
- * Stopping DOS from loading into the HMA
-
- ================================================================================
-
- (Requirements)::
-
- * Requires MS-DOS Version 5.00 or above
-
- ================================================================================
-
- (Installation)::
-
- (CONFIG.SYS)::
-
- Installation of STOPMAX.SYS requires modifying the contents of
- your CONFIG.SYS file.
-
- (Generic Configuration)::
-
- This configuration should work and be the most efficient in 95%
- of all configurations. For a few real world examples see
- EXAMPLES.DOC
-
- DOS=HIGH[,UMB] (DOS 5.0 and above only)
- DEVICE=STOPMAX.SYS [options] (Stops kernel from loading in HMA)
- DEVICE=(xms/umb memory manager)
- DEVICE=DOSMAX.EXE [options] (DOSMAX loads high automatically)
- SHELL=SHELLMAX.COM COMMAND.COM /P
- BUFFERS=20
- FILES=40
- LASTDRIVE=Z
-
- DOS 5.0 and above users should configure DOS to load high into
- the HMA. The UMB parameter is optional, since both DOS 5.0 and
- above upper memory management and XMS upper memory blocks are
- supported by DOSMAX.
-
- DOS=HIGH[,[UMB][NOUMB]] (Both DOS UMB's and XMS UMB's supported)
-
- Add a DEVICE= line for STOPMAX.SYS in your config.sys. STOPMAX
- must be loaded before the XMS and UMB memory manager, but some
- memory managers provide high memory but not an HMA. If your
- memory manager does not support an HMA, then STOPMAX is not
- necessary. DOSMAX is then loaded "after" the memory manager
-
- HIMEM.SYS from Microsoft always puts the DOS 5.0 and above kernel
- into the HMA before it is through initializing and then puts its
- own code into the HMA. If you are able to load HIMEM.SYS high
- (using some upper memory providers, not EMM386.SYS), you can now
- use the /I+ switch to stop HIMEM from loading DOS into the HMA,
- and STOPMAX will put it into a UMB instead. The /B+ option (default)
- also stops HIMEM.SYS from putting the DOS kernel into the HMA. If
- you use only DOS 5.0 and above files, meaning HIMEM.SYS and EMM386.SYS
- you should not use STOPMAX.
-
- DEVICE=STOPMAX.SYS [options]
- DEVICE=(Memory Manager)
- ......
- DEVICE=DOSMAX.EXE [options]
-
- By default, STOPMAX.SYS will generate a message for each successful
- operation or event. The display then pauses to allow you to
- read the report. After you are satisfied with the configuration
- and you want to disable the REPORT and PAUSE feature, use:
-
- DEVICE=STOPMAX.SYS /R- /P-
-
- All switch options and possible messages for STOPMAX are detailed
- below:
-
- ================================================================================
-
- (Syntax)::
-
- The only thing to remember about syntax for the command line is
- that just about anything works. What this means is that you
- should be able to type in the options on the command line the
- way they make sense to you.
-
- To illustrate this point, the following command line example
- is mutated several different ways.
-
- DEVICE=STOPMAX.SYS /R- /P- /B+
- DEVICE=STOPMAX.SYS -R- -P- -B+
- DEVICE=STOPMAX.SYS R- P- B+
- DEVICE=STOPMAX.SYS R-P-B
- DEVICE=STOPMAX.SYS -R-P-B
-
- ... and so on.
-
- STOPMAX 1.9 and above adds optional full word syntax. The new
- syntax looks like this:
-
- DEVICE=STOPMAX.SYS /REPORT:- /PAUSE:- /IOPATCH:+
- DEVICE=STOPMAX.SYS -REPORT:- -PAUSE:- -IOPATCH:+
- DEVICE=STOPMAX.SYS REPORT:- PAUSE:- IOPATCH:+
- DEVICE=STOPMAX.SYS REPORT-PAUSE-IOPATCH:+
- DEVICE=STOPMAX.SYS -REPORT-PAUSE-IOPATCH:+
-
- Obviously when using full words, it is easier to keep the words
- separated so that is clear to read. The optional [:] is used
- for toggle switches (i.e. REPORT:+). These optional delimiters
- can also be used with the single letter switches. Exact spelling
- is required because the single letter interface is still intact.
-
- (Switch Options)::
-
- The following list of switch options is organized by:
-
- - Control of STOPMAX Reports (/R:/P:/N:)
- - Control the Location of the DOS Kernel (/B:/V:/I:)
-
- (Control of STOPMAX Reports)::
-
- (REPORT):: R[+ or -] (toggle: default +)
-
- Use /R- or /REPORT:- to disable the report after you are
- satisfied with the configuration of STOPMAX.SYS
-
- (PAUSE):: P[+ or -] (toggle: default +)
-
- Use /P- or /PAUSE:- to disable the pause after the report as
- long as there are no errors or warnings.
-
- (NOPAUSE):: N[+ or -] (toggle: default -)
-
- Use /N+ or /NOPAUSE:+ to never pause after the report, even if
- there are errors. This switch can be used if your configuration
- generates a warning or error message which you choose to ignore.
-
- (Control the Location of the DOS Kernel)::
-
- (IOPATCH):: B[+ or -] (toggle: default -)
-
- Use /B+ or /IOPATCH:+ to stop DOS from loading in the HMA using
- a method which patches the copy of DOS 5.0 initialization code in
- memory when STOPMAX initializes. This method will search and
- "patch out" the DOS to HMA code. This option was developed and
- tested under MSDOS 5.0 and 6.0 and is not guaranteed to work with
- DOS versions later than 6.0, but then many of the algorithums in
- STOPMAX depend upon "undocumented" features of DOS which are always
- subject to change anyway. The advantage of this method is that it
- works no matter which memory manager is used or how it is configured.
-
- (VDISK):: V[+ or -] (toggle: default -)
-
- Use /V+ or /VDISK:+ to enable an alternate method of stopping
- DOS from allocating the HMA. This switch is only necessary
- if STOPMAX reports that the DOS version is incompatible, and
- it will only work with memory managers which can detect a
- VDISK Header in the HMA when the memory manager initializes
- and mark's it as allocated.
-
- (STOPHIMEM):: I[+ or -] (toggle: default -)
-
- Use /I+ or /STOPHIMEM:+ to stop HIMEM.SYS from loading DOS HIGH.
- This switch is intended for users who load HIMEM.SYS from
- Microsoft high after their UMB provider. This option is not
- very useful if HIMEM.SYS is not loaded high because HIMEM will
- grow to about 30k in size. If you still want to inhibit HIMEM,
- then load it last, to minimize the "growth." The reason HIMEM
- "grows" is because the code which normally goes to the HMA is
- fixed at offset 0A000, so if HIMEM is loaded below 0A00h, the
- size of HIMEM grows to 0A00h + the size of the HMA code + the
- size of the XMS handle table. This option affects the size of
- STOPMAX and adds 32 bytes.
-
- * everything in square brackets "[]" is optional
-
- (CONFIG.SYS Line)::
-
- DEVICE=STOPMAX.SYS [/-][R-P+I+N+V+B-]
-
- device default: /R+/P-/N-/B+/I-/V-
-
- * Report status messages
- * Don't Pause after report
- * Pause on errors or warnings
-
- ================================================================================
-
- (Report Format)::
-
- STOPMAX.SYS : Ver. 2.0, Copyright (1992,93) by Philip B. Gardner
- ERROR : (Error Messages)
- WARNING : (Warning Messages)
- ADVICE : (Advisory Messages)
- : (Report Messages)
- : (Allocation Status)
- PAUSE : Press any key to continue...
-
- (Report Note)::
-
- STOPMAX.SYS may be replaced by STOPMAX.OVL. The exact name of the
- module is dependent upon the circumstances under which STOPMAX.SYS
- reports. This detail is important only as diagnostic information.
-
- ================================================================================
-
- (Error Messages)::
-
- MS-DOS version 5.00 or above is required
- An 80186 processor or better is required
- Can't load in High Memory
- DOS version is not compatible
- Not necessary for versions below DOS 5.0
- DOS is HIGH already
- Include DOS=HIGH in CONFIG.SYS
- Couldn't write VDISK Header
- Stop DOS to HMA patch not successful
-
- ================================================================================
-
- (Warning Messages)::
-
- Unknown option in command line
- Unknown option on line #0000
- Extra characters on command line
- Missing or invalid option file XXXXXXXX.XXX
- Line length overflow at line #0000
-
- ================================================================================
-
- (Advisory Messages)::
-
- Should be the first DEVICE= in CONFIG.SYS
- Try using /V+ switch
- Try using /B+ switch
-
- ================================================================================
-
- (Report Messages)::
-
- Processing option file XXXXXXXX.XXX
- Effection section is [XXXXXXXX]
-
- ================================================================================
-
- (Allocation Status)::
-
- ================================================================================
-
- (Changes)::
-
- (Version 1.6)::
-
- (1) Added check for a 186 processor or better (allows V20/V30).
-
- (2) Removed the check for an XMS manager and a check for extended
- memory. This allows machines without extended memory to use
- UMB providers, which do not require extended memory, with STOPMAX.
- These checks were redundant since if DOS is in the HMA when
- STOPMAX loads, the message "DOS is HIGH already" is reported.
-
- (3) Added /I option which inhibits HIMEM.SYS from loading DOS HIGH.
- This switch is not very useful if HIMEM.SYS is not loaded high,
- since HIMEM will be about 30k in size. This switch is intended
- for users who load HIMEM high after their UMB provider is installed.
-
- (4) Now supporting separate program STOPM86.SYS. This program is
- functionally identical to STOPMAX.SYS, but is compiled to work
- on 8086/8088 processors also. I have learned that there are
- 8086/8088 machines which can be configured with High Memory
- using some High Memory Managers, and this variation will make
- it possible for those users to put DOS in a UMB even though
- there is no HMA. STOPM86.SYS requires 32 more bytes of memory.
-
- (5) Added /B+ option which will stop DOS from going to the HMA by
- patching the DOS initilization code in memory. This method
- works no matter which memory manager is in use or how it is
- configured. It also requires no resident memory. I made this
- the default method for STOPMAX.
-
- (Version 1.7)::
-
- (1) Changed common parsing algorithum to support Hex-Notation input.
- This input method is not used in STOPMAX at this time.
-
- (Version 1.8)::
-
- (1) Changes in STOPMAX common code for specific 386MAX support.
-
- (Version 1.9)::
-
- (1) Reorganized code to enable an overlay method of module selection
- to automate processor selection and split up .SYS and .EXE modules
- to reduce the initialization memory to minimum.
-
- (2) STOPMAX now automatically detects the processor type and chooses
- separate code modules if appropriate. The 186 processor require-
- ment of previous versions is no longer applicable.
-
- (3) Added optional full word syntax to argument parser. The old style
- single letter switch interface is still intact. The switch lists
- now show the optional word with the switch.
-
- (4) STOPMAX updated for DOS 6.0. Corrected a coding error while moving
- buffers.
-
- (Version 2.0)::
-
- (1) Added response file input with @filename.opt syntax
-
- ================================================================================
-